자연어 기반 AI-인간 인터렉션의 한계
- 2025-07-23
- 출판일: 2024-07-27
- 저자: AK
자연어에 기반한 AI-인간 인터랙션으로 인한 한계에 대해 생각해봤다. AI-인간 상호작용 루프에서의 병목을 일으키는 주요 요인 중 하나다. (다른 하나는 아마도 인간의 게으름)
자연어 소통의 기이함
영화에서 로봇끼리 자연어로 대화하는 걸 보며 비효율적이라는 생각을 하곤 했다.
자연어는 여분도 많고, 모호하고, 숨쉬는 기관(허파)이랑 맛보는 기관(혀)이랑 소화 기관(이빨) 등을 변용해서 공기를 울려 신호를 보내고 물 속에서 방향 잡던 기관(귀)을 변용해서 공기의 울림을 감지하여 신호를 받는 식의 설계도 참 기이하다.
설계의 기이함이 물리적인 신체 기관에서만 끝날 리는 없다. 언어와 사고는 서로 밀접하게 엮여 있으니 인간의 사고도 다양한 이유에서 비효율적이고 기이할 것이 분명하다. 진화사를 살펴보면 이해가 되는 설계지만, 소통 방식을 밑바닥부터 새로 설계한다면 이렇게 하지는 않겠지.
로봇끼리 소통하는 맥락에서 이런 이상한 방식을 쓰는 건 대단히 이상하다. 물론 인간 관찰자의 존재를 생각해보면 장점도 있기는 하겠다. 평문 기반의 프로토콜이 가지는 장점과 유사.
LLM과 인간 사이의 자연어 소통
그렇다면 인간과 기계 사이의 소통을 자연어로 하는 건 어떨까? LLM 덕분에 2년 가까이 체험을 해봤으니 회고를 할 때가 됐다(ChatGPT는 2022년 11월 30일에 공개되었고 이 글은 2024년 7월 27일에 쓰는 중).
일단, 기계랑 대화를 잘 하기 위한 화술을 배워야 했다. 기계 화술을 가르치는 학원도 있고, 기계 화술이 뛰어난 사람을 찾는 회사도 생겼다. 기계 화술을 우리는 프롬프트 엔지니어링이라고 부른다. 화술 학원에서 가르치는 기술을 두 범주로 나눠보면 유익하다.
- 범주1은 기계가 인간과 다르기 때문에 인간 화자가 기계 청자를 위해 배우는 화술이다.
- 범주2는 청자가 기계이건 인간이건 간에 화자의 의도를 효율적으로 전달하기 위해 필요한 화술이다. 지금은 범주1이 병목인 경우가 종종 있지만 조만간 범주2가 병목이 될테고 앞으로 영원히 그럴 가능성이 있다.
병목 개선을 위한 인공 언어
범주2를 병목으로 보고 이걸 개선한다는 건 무슨 뜻일까?
인간-기계의 소통 과정을 나눠보면 모호하지만(예: 단일 LLM이라면 3, 4, 5가 거의 한 덩어리) 대충 이렇다.
- 인간: 의도를 형성
- 인간: 의도를 발신
- 기계: 수신
- 기계: 계산
- 기계: 응답을 발신
- 인간: 수신
- 인간: 해석
인간이 의도를 형성하고 발신하는 단계(1, 2), 기계의 응답을 수신하고 해석하는 단계(6, 7)가 다 병목이다. 언어와 사고가 밀접히 엮여 있으니 언어를 개선하면 사고도 조금 개선되지 않을까? 즉, 더 개선된 언어로 소통하면 내 의도를 더 날카롭게 다듬고, 소통을 더 명확하게 할 수 있지 않을까?
자연어 소통의 단점을 좀 더 살펴보면 1) 각 단계가 오래 걸리는 문제, 2) 의도가 명확치 않아 소통이 반복되는 문제(예: “아니 내 말은 그게 아니고…”), 3) 그럭저럭 수용할만한 결과가 나오면 만족해버리는 문제(예: “어휴 설명하기 귀찮아. 이만하면 됐지 뭐…”) 등이 있다.
인간-인간 소통에서 소통을 명확히 하고 효율을 높이고 싶을 때 뭘 하더라? 형식화를 한다. 대표적 사례는 이공계열 논문. 배우기도 쉽고 쓰기도 쉬운 형식 언어를 만들면 제일 좋겠지만 그건 어려우니 하나를 택한다면 배우기는 어렵지만 쓰기는 쉬운 방향을 지향해야.
인간-기계가 소통하기 위한, 배우긴 어렵지만 쓰긴 쉬운 언어. 사고방식에 영향을 주는 언어. 그런 게 뭐가 있더라? 프로그래밍 언어. 어떤 프로그래밍 언어? 파이썬보다는 Lean에 가깝고, 문학적 프로그래밍마냥 자연어와 형식언어를 쉽게 섞어 쓸 수 있는 무언가.
의식의 흐름대로 쓰다보니 결국 인간-기계 간 소통을 크게 개선하려면 인간의 사고와 언어가 개선되어야하고, 그 방편으로 프로그래밍 언어(혹은 증명 언어)+형식 논리 같은 걸 배우면 좋겠다는 식으로 가버려서 이상해졌지만(망치를 들면 모든 것이 못…), 타당한 방향 중 하나인 것 같다.
이미 이런 흐름의 단편들이 보이기 시작하는데, 일례로 LLM에게 의도를 명확히 전달하는 방법 중 하나로 응답의 타입(또는 스키마)를 정의해서 전달하는 방법이 널리 쓰이고 있다. ‘타입 정의’와 ‘명확한 의도 형성’ 사이엔 깊은 관련이 있는데 이 얘기는 나중에.
추가로, 어차피 지금 방식의 확률적 생성 모델만으론 한계가 명확하고 전통적 기호 처리 방식(GOFAI, Symbolic AI)이 엮여야 할텐데(이미 그러고 있고), 이런 흐름을 생각하더라도 (인간-기계 소통의 효율을 극도로 높이는 게 중요한 상황이라면) 인간의 자연어+모호한 사고는 병목이다.
관련 자료
- Reliable Reasoning Beyond Natural Language (Prolog를 LLM을 위한 정신어로 쓰기)
- LeanTool